package day2_1;


/*4：传闻StringBuilder比StringBuffer快,
比较一下，输出你的比较结果（拼接10万个相同的字符串，比较时间）。*/

/*String 是不可变的，而 StringBuffer 和 StringBuilder 是可变类。
StringBuffer 是线程安全和同步的，而 StringBuilder 不是。这就是 StringBuilder 比 StringBuffer 快的原因。
字符串连接运算符 (+) 在内部使用 StringBuilder 类。
对于非多线程环境中的字符串操作，我们应该使用 StringBuilder 否则使用 StringBuffer 类。*/

public class _4 {
    public static void main(String[] args) {
        _4 x=new _4();
        x.a();
        x.b();

    }
    public void a(){
        StringBuilder stringBuilder = new StringBuilder(10000000);
        long start = System.nanoTime();
        for (int i = 0; i < stringBuilder.length(); i++) {
            stringBuilder.append(i);
        }
        long end = System.nanoTime();
        System.out.println(end-start);
    }
    public void b(){
        StringBuffer stringBuffer = new StringBuffer(10000000);
        long start = System.nanoTime();
        for (int i = 0; i < stringBuffer.length(); i++) {
            stringBuffer.append(i);
        }
        long end = System.nanoTime();
        System.out.println(end-start);
    }
}
